class Creature:
def __init__(self,classify,type):
self.classify=classify
self.type=type
def describe_creature(self):
print(f"{self.classify} is a {self.type}.")
class Magical(Creature):
def __init__(self,classify,type,name, powers):
super().__init__(classify,type)
self.name = name
self.powers=Powers(powers)
def describe_magic_creature(self):
print("========================================")
print(f"Classification={self.classify}")
print(f"Type={self.type}")
print(f"Name={self.name}")
self.powers.show_powers()
print("========================================")
class Powers:
def __init__(self,superpower):
self.superpower=superpower
def show_powers(self):
print(f"The being has the following powers")
for p in self.superpower:
print(p.title())
number = input("How many creatures would you like to enter?")
number = int(number)
counter=0
creatureList=[]
while counter<number:
c = input("Creature classification: ")
t = input("Creature type: ")
n = input("Enter the creature's name: ")
p = input("Enter the creature's powers (q to quit) ")
tempList=[]
while p!="q":
tempList.append(p)
p = input("Enter the creature's powers (q to quit) ")
new_creature = Magical(c,t,n,tempList)
creatureList.append(new_creature)
counter += 1
for creature in creatureList:
creature.describe_magic_creature()